const mongoose=require('mongoose')
const Schema = mongoose.Schema;
const {Mixed,ObjectId}=Schema.Types;  //Mixed作用是占位，以后可是单一数值，也可是数组

let dyTagsSchema = new Schema({
    name: {type:String,unique:true},  //unique不能重复
    movies:[{  //这里和movieSchema不同，这是存放电影ID的数组
        type:ObjectId,
        ref:'movieSchema'   //mongo提供的指向movieSchema模型
    }],
    mate:{
        createAt:{
            type:Date,
            default:Date.now()
        },
        upDateAt:{
            type: Date
        }
    }
});
dyTagsSchema.pre('save',function(next){
    if(this.isNew){    //movieSchema的数据是不是isNew最新的，这个mongoose会验证
        this.mate.createAt=this.mate.upDateAt=Date.now()
    }else{
        this.mate.upDateAt=Date.now()
    }
    next()   //不过数据是不是最新，最后一定要放行到mongoose.model，否则卡住这
})

let DyTags = mongoose.model('DyTags', dyTagsSchema);
module.exports=DyTags